package com.fjb.service.product;

import com.fjb.common.entity.JsonResult;
import com.fjb.common.entity.JsonTotalResult;
import com.fjb.common.entity.PageQuery;
import com.fjb.pojo.product.ProductAttribute;
import com.fjb.pojo.product.ProductAttributeSku;
import com.fjb.pojo.product.ProductFiles;
import com.fjb.pojo.product.ProductInfo;
import com.fjb.pojo.product.query.ProductInfoQuery;
import com.fjb.pojo.product.vo.ProductInfoPageVo;

import java.util.List;

import com.baomidou.mybatisplus.extension.service.IService;

/**
 * <p>
 * 产品信息 服务类
 * </p>
 *
 * @author hemiao
 * @since 2019-12-22
 */
public interface ProductInfoService extends IService<ProductInfo> {
	
	/**
	 * @Description:分页列表查询
	 * @param productInfoQuery
	 * @param pageQuery
	 * @return
	 * JsonTotalResult<List<ProductInfoPageVo>>
	 * @exception:
	 * @author: hemiao
	 * @time:2020年1月12日 下午7:21:07
	 */
	JsonTotalResult<List<ProductInfoPageVo>> selectPageList(ProductInfoQuery productInfoQuery, PageQuery pageQuery);
	
	/**
	 * @Description:修改产品
	 * @param productInfo
	 * @return
	 * Boolean
	 * @exception:
	 * @author: hemiao
	 * @time:2020年1月12日 下午7:21:47
	 */
	Boolean updateInfo(ProductInfo productInfo);
	
	/**
	 * @Description:添加产品
	 * @param productInfo
	 * @param attributeLiat
	 * @param attributeSkuList
	 * @return
	 * Boolean
	 * @exception:
	 * @author: hemiao
	 * @time:2020年1月27日 下午11:59:33
	 */
	JsonResult<Integer> addInfo(ProductInfo productInfo, List<ProductAttribute> attributeLiat,
			List<ProductAttributeSku> attributeSkuList,List<ProductFiles> filesList);

}
